/**
 * 判断数据是否为数组类型
 *
 * @param data 任意数据
 * @returns {data is any[]} 传入的数据是否为数组类型，true 为数组类型，false 为非数组类型
 */
export const isArr = (data: any): data is any[] => Array.isArray(data)


/**
 * 判断数组是否为空数组
 *
 * @param {any[]} arr 需要进行判断的数组
 * @returns {arr is []} 传入的数组是否为空数组，true 为空数组，false 为非空数组
 */
export const isEmptyArr = (arr: any[]): arr is [] => isArr(arr) && arr.length === 0


/**
 * 判断数组类型数据中是否包含指定值
 *
 * @param {any[]} arr 数组类型数据
 * @param value 需要判断是否包含在数组中的值
 * @returns {boolean} true 包含，false 不包含
 */
export const isArrIncludes = (arr: any[], value: any): boolean => !isEmptyArr(arr) && arr.includes(value)
